iT邦幫忙

2024 iThome 鐵人賽

DAY 26
0
佛心分享-IT 人自學之術

C++探險家系列 第 26

Day 26 書籍借還系統專題製作

  • 分享至 

  • xImage
  •  
#include <iostream>
#include <fstream>
#include <string>
#include <stdlib.h>
#define MaxNum 256
using namespace std;
typedef struct node {
    int i;    //編號
    string name; //名稱
    int rentBy; //租借會員編號 -1 代表無人外借
} NODE;

class MEMBER {
public:
    MEMBER();
    bool exist(int);
    bool add(string);
    bool remove(int);
    void show();
    void readFile();
    void writeFile();
    
    friend class BOOK;  // BOOK 會用到 private 資料,因而加入 friend
    friend class DVD;   // DVD 會用到 private 資料,因而加入 friend
private:
    int index;  //紀錄陣列寫入位置
    string DataBase[MaxNum];
};
class BOOK {
public:
    BOOK();
    bool exist(int);
    bool add(string, int);
    bool remove(int);
    bool rent(int, int);
    bool back(int, int);
    void show(MEMBER);
    void readFile();
    void writeFile();
protected:
    int index;  //紀錄陣列寫入位置
    NODE DataBase[MaxNum];
};

class DVD : public BOOK {  // 繼承自 BOOK
public:
    DVD();
    bool addDVD(string, int, int);
    void showDVD(MEMBER);
    void readFile();
    void writeFile();
private:
    int level[MaxNum];
};
int main() {
    int temp;
    string name;
    MEMBER member;
    BOOK book;
    DVD dvd;
    while (true) {
        // main loop code
    }
}

說明:
MEMBER 類別負責管理成員資料,BOOK 類別管理書籍,而 DVD 繼承自 BOOK 並增加額外的級別管理功能。成員、書籍和 DVD 的資料可從文件中讀取或寫入。系統包括租借與歸還的基本操作,並使用了類與結構來組織資料。

!!以上內容是跟著第一次學C++就上手第二版內容所跟著一起操作的!!
今天是第三、四段程式碼,這次寫的兩段程式碼執行起來都沒問題蠻順利的,希望明天也能繼續操作下去!剩下四天了,加油~


上一篇
Day 25 書籍借還系統專題製作
下一篇
Day 27 書籍借還系統專題製作
系列文
C++探險家30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言